<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">
	<h:form id="listForm">
		<p:contextMenu for="listTrasporto">
			<p:menuitem value="Mostra Dettagli" icon="ui-icon-info"
				onclick="PF('dlgDettagliTrasporto').show();"
				update="trasportoDettagliPanel"/>
			<p:menuitem value="Modifica" icon="ui-icon-pencil"
				onclick="PF('dlgTrasporto').show();"
				update="trasportoPanel, :messages"
				rendered="#{empty isAgent ? 'false' : 'true'}" />
			<p:menuitem value="Elimina" update="listTrasporto, :messages"
				icon="ui-icon-close"
				actionListener="#{prodottiBean.cancellaTrasporti}"
				rendered="#{empty isAgent ? 'false' : 'true'}" />
		</p:contextMenu>

		<p:dataTable id="listTrasporto" var="trasportoVar"
			value="#{prodottiBean.listaTrasporto()}" rowKey="#{trasportoVar.idTrasporto}"
			selection="#{prodottiBean.trasporto}" selectionMode="single"
			emptyMessage="Nessun trasporto inserito" paginator="true" rows="10"
			rowsPerPageTemplate="5,10,15" filteredValue="#{prodottiBean.filteredTrasporto}">
			<f:facet name="header">Lista Trasporti</f:facet>
			<p:column headerText="Codice" filterBy="codice"
				filterMatchMode="contains">
				<h:outputText value="#{trasportoVar.codice}" />
			</p:column>
			<p:column headerText="Prezzo">
				<h:outputText value="#{trasportoVar.prezzo}" />
			</p:column>
			<p:column headerText="Partenza" filterBy="localitàPartenza"
				filterMatchMode="contains">
				<h:outputText value="#{trasportoVar.localitàPartenza}" />
			</p:column>
			<p:column headerText="Destinazione" filterBy="località"
				filterMatchMode="contains">
				<h:outputText value="#{trasportoVar.località}" />
			</p:column>
			<p:column headerText="Tipologia" >
				<h:outputText value="#{trasportoVar.tipologia}" />
			</p:column>
			<f:facet name="footer">
				<h:outputText
					value="in totale: #{prodottiBean.numTrasporti} trasporti" />
			</f:facet>
		</p:dataTable>


		<p:dialog id="dialogTrasporto" header="Modifica Trasporto"
			widgetVar="dlgTrasporto" showEffect="clip" hideEffect="clip" dynamic="true">

			<p:ajax event="close" update="msgAggiornaTrasporto, @this" />


			<h:panelGrid id="trasportoPanel" columns="4" cellpadding="5">

				<h:outputLabel for="codiceTrasporto" value="Codice:" />
				<p:inputText id="codiceTrasporto" value="#{prodottiBean.codiceTraspCorrente}"
					validatorMessage="Inserire un numero non negativo o lasciare vuoto">
					<f:validateRegex pattern="[0-9]*" />
					<p:ajax event="click" update="msgAggiornaTrasporto" />
				</p:inputText>
				<p:watermark for="codiceTrasporto"
					value="#{prodottiBean.trasporto.codice}" />
				<p:message id="msgCodiceTrasporto" for="codiceTrasporto" />

				<h:outputLabel for="prezzoTrasporto" value="Prezzo:" />
				<p:inputText id="prezzoTrasporto" label="Prezzo"
					value="#{prodottiBean.prezzoTraspCorrente}"
					validatorMessage="Inserire un numero non negativo o lasciare vuoto">
					<f:validateRegex pattern="[0-9]*" />
					<p:ajax event="click" update="msgAggiornaTrasporto" />
				</p:inputText>
				<p:watermark for="prezzoTrasporto"
					value="#{prodottiBean.trasporto.prezzo}" />
				<h:outputLabel></h:outputLabel>

				<p:message id="msgPrezzoTrasporto" for="prezzoTrasporto" />
				<h:outputLabel></h:outputLabel>
				<h:outputLabel></h:outputLabel>
				<h:outputLabel></h:outputLabel>

				<h:outputLabel for="localitàPartTrasporto" value="Partenza:" />
				<h:outputLabel id="localitàPartTrasporto"
					value="#{prodottiBean.trasporto.localitàPartenza}" />
				<h:outputLabel></h:outputLabel>
				<h:outputLabel></h:outputLabel>

				<h:outputLabel for="localitàArrTrasporto" value="Destinazione:" />
				<h:outputLabel id="localitàArrTrasporto"
					value="#{prodottiBean.trasporto.località}" />
				<h:outputLabel></h:outputLabel>
				<h:outputLabel></h:outputLabel>
				
				<h:outputLabel for="tipologia" value="Tipologia:" />
				<h:outputLabel id="tipologia"
					value="#{prodottiBean.trasporto.tipologia}" />
				<h:outputLabel></h:outputLabel>
				<h:outputLabel></h:outputLabel>

			</h:panelGrid>
			<p:commandButton id="salvaTrasporto" value="Salva"
				update="trasportoPanel, msgAggiornaTrasporto, listTrasporto"
				action="#{prodottiBean.updateTrasporti()}" />

			<p:messages id="msgAggiornaTrasporto" showDetail="false"
				autoUpdate="false" closable="true" for="salvaTrasporto" />
		</p:dialog>

		<p:dialog id="dialogDettagliTrasporto" header="Dettagli Trasporto"
			widgetVar="dlgDettagliTrasporto" showEffect="clip" hideEffect="clip" dynamic="true">

			<h:panelGrid id="trasportoDettagliPanel" columns="2" cellpadding="5">
				<h:outputLabel value="Codice:" />
				<h:outputLabel value="#{prodottiBean.trasporto.codice}" />

				<h:outputLabel value="Partenza:" />
				<h:outputLabel value="#{prodottiBean.trasporto.localitàPartenza}" />

				<h:outputLabel value="Destinazione:" />
				<h:outputLabel value="#{prodottiBean.trasporto.località}" />

				<h:outputLabel value="Prezzo:" />
				<h:outputLabel value="#{prodottiBean.trasporto.prezzo}" />
				
				<h:outputLabel value="Tipologia:" />
				<h:outputLabel value="#{prodottiBean.trasporto.tipologia}" />
			</h:panelGrid>
		</p:dialog>
	</h:form>
</ui:composition>
